#ifndef __sound_h__
#define __sound_h__

class CSound
	{
	protected:
		bool Paused;
	public:
		void *user;
		void (*audio_callback)(void *user,void *buffer,int length);
	public:
		CSound(){Paused = false;}
		virtual ~CSound(){}
		virtual void Pause(){Paused = true;}
		virtual void Resume(){Paused = false;}
		virtual bool IsPaused(){return(Paused);}
		virtual int Play(){return(0);}
		virtual int Init(u8 *buffer,u32 bufsize,u32 bits,u32 hz){return(0);}
		virtual void Kill(){}
		virtual void SetCallback(void (*cb)(void*,void*,int)){audio_callback = cb;}
		virtual void SetUser(void *u){user = u;}
	};

#endif
